// pages/firstV2.0/firstV2.0.js
const DB = require('../../utils/db.js');
const app = getApp();
Page({

  /**
   * 页面的初始数据
   */
  data:{
    tab: 0,
    item: 0,
    istrue: true,
    show: false,
    hide: true,
    loginID: "",
    showpsw: "../../images/显示密码.png",
  },
  changeItem:function(e){
    this.setData({
      item: e.target.dataset.item
    })
    
  },
  changeTab:function(e){
    this.setData({
      tab: e.detail.current
    })
  },
  switchChange:function(e){
    console.log(e.detail.value)
    if(e.detail.value){

    }
  },
  show:function(e){
    this.setData({
      show: false,
      hide: true,
      istrue: true,
    })
  },
  hide:function(e){
    this.setData({
      show: true,
      hide: false,
      istrue: false,
    })
  },
  //点击登录事件
  login: function (e) {
    var loginID = e.detail.value.account; //原e.d.v.name修改...account
    var pwd = e.detail.value.password;

    if(loginID != "" && pwd != ""){
      wx.showToast({
        title: '正在登录...',
        icon: 'loading',
        mask: true
      })
      // if(loginID.length == 4){
      //   teaLogin(loginID,pwd)
      // }else if(loginID.length ==2){

      // }
      // stuLogin(loginID,pwd)
      switch(loginID.length){
        case 5:
          polLogin(loginID,pwd)
          // console.log('安保人员登录')
          break;
        case 4:
          teaLogin(loginID,pwd)
          // console.log('教师登录')
          break;
        case 10:
          stuLogin(loginID,pwd)
          // console.log('学生登录')
          break;
        default:
          wx.showToast({
            title: '账号格式错误!',
            icon: 'none',
            mask: true
          })
      }
    }else{
      wx.showToast({
        title: '请输入账号密码!',
        icon:'none'
      })
    }
  },


  //手机号授权
  getPhoneNumber: function (e) {
    var _this = this;
    if (e.detail.errMsg == "getPhoneNumber:ok") {
      //清空所有缓存
      wx.clearStorageSync();
      // console.log(e)
      wx.showToast({
        title: '正在授权',
        icon: 'loading',
        mask: true,
      })
      //此云函数用于检验用户是否被教工或学生进行临时或长期授权
      wx.cloud.callFunction({
        name: 'get_student_pro',
        data: {
          weRunData: wx.cloud.CloudID(e.detail.cloudID),
        }
      }).then(res => {

        //判断返回值长度是否0，不为0 == 已被授权
        if (res.result.length != 0) {
          var timeTamp = res.result[0].time;
          var localtime = Date.parse(new Date()) / 1000;
          var num = localtime - timeTamp  //当前时间与授权成功的时间差
          var premitTime = res.result[0].longer * 60 * 60;  //授权的时间长度，单位秒

          //判断授权是否过期
          if (num > premitTime) {
            //过期情况
            wx.showToast({
              title: '您当前的授权信息已过期',
              icon: 'none',
            })
          } else {
            //未过期情况
            var limitter = parseInt(timeTamp) + parseInt(premitTime);
            //重定向，传手机号码的参数
            wx.reLaunch({
              url: '/pages/outcode/outcode?phone=' + res.result[0].phone + '&&limitter=' + limitter,
            })
          }

        } else {
          wx.showToast({
            title: '手机号未被授权',
            icon: 'none',
          })
        }
      })
    } else {
      wx.showToast({
        title: '拒绝授权',
        icon: 'none',
      })
    }
  },
  

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {

  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  }
})
////学生登录////
function stuLogin (loginID,pwd){
  wx.cloud.callFunction({
    name:"get_student",
    data:{
      studentID:loginID,
    },
    success(res) {
      // console.log("成功", res.result)
      if (res.length != 0) {
        if (pwd == res.result[0].password && res.result[0].statue == 1) {
          wx.clearStorageSync();
          wx.setStorageSync('student', { 'studentID': loginID,'grade':res.result[0].grade,'name':res.result[0].name, 'login': true });
          //关闭所有页面打开新页面
          wx.reLaunch({
            // url: '/pages/index/index?data=' + res.result[0].studentID,
            url: '../index/index',
          })
        } else {
          wx.showToast({
            title: '密码错误或账户已停用，请联系管理员！',
            icon: 'none'
          })
        }
      } else {
        wx.showToast({
          title: '账号或密码错误！',
          icon: 'none'
        })
      }
    },
  })
}
////教师登录////
function teaLogin(loginID,pwd){
  var teacherID = loginID
  DB.getTeacherByid(teacherID, function (res) {
    if(res.length == 0){
      wx.showToast({
        title: '您的工号还未注册，请先注册！',
        icon: 'none'
      })
    }else if(pwd != res[0].password){
        wx.showToast({
          title: '密码错误！',
          icon: 'none'
        })
    }else{
        //成功登录情况
        wx.clearStorageSync();
        wx.setStorageSync('teacher',{'teacherID':res[0].teacherID,'name':res[0].name,'login':true});
        // wx.reLaunch({
        //   url: './teacher/teacher?teacherID=' + res[0].teacherID + '&&name=' + res[0].name,
        // })

        // console.log(res)
        app.globalData.teacherID = res[0].teacherID,
        app.globalData.teacherName = res[0].name,  
        wx.reLaunch({
          url: '../teacherlogin/home/home'
        })
      }
  })
}
////安保人员登录////
function polLogin(loginID,pwd){
  var name = loginID
  DB.getPolice(name,function(res){
    if(res.length != 0){
      if(res[0].password == pwd && res[0].status == 1){
        wx.clearStorageSync();
        wx.setStorageSync('police', {'name':name,'login':true});

        //关闭所有页面打开新页面
        wx.reLaunch({
          url: '/pages/policelogin/scan/scan?name='+name,
        })


      }else{
        wx.showToast({
          title: '密码错误或账户已停用，请联系管理员！',
          icon:'none'
        })
      }
    }else{
      wx.showToast({
        title: '账号或密码错误！',
        icon:'none'
      })
    }
  })
}

